1. Field of the Invention
The present invention relates to continuous data protection, and more particularly, to continuously archiving data on a storage device within a pre-set time period.
2. Background Art
Currently, there are a number of conventional methods that relate to organization of data archiving. One of these methods is a backup of the entire hard drive, which typically involves copying of the hard drive contents onto some other medium (such as, for example, another hard disk drive, a DVD ROM, a DVD RAM, a flash disk, etc.). The primary disadvantage of such a method is a need to backup what can be a very large amount of data, which, on the one hand, results in a relatively lengthy process of archiving, and, on the other hand, frequently requires relatively large available space for the archived data. This ultimately results in a relatively high cost of archiving per unit of archived data.
Another approach is often referred to as “incremental backup,” which generally decreases the amount of space required for the archiving. With the incremental backup, typically, the contents of the hard disk drive is archived, or stored somewhere once. After that, only the data that has been changed, or added, since the previous backup, or since the pervious incremental backup, is actually archived. Recovery of the data from the archive typically involves merging of the original backup and the various incremental backups.
For conventional backups it is possible to restore data to the point at which the backup was taken. In case of a system failure, the data can be restored from the last incremental backup. In this case, data from the time of this incremental backup creation up to the time of a system failure will be lost.
On the other hand, continuous data protection is different from traditional backups. With continuous data protection, an initial backup can be created as in the case of a traditional backup, but the new data (which is written on the storage device) is backed up in the incremental backup (so called a continuous incremental backup, or open-for-editing incremental backup) in parallel to writing on the storage device. In other words, the new data is backing up to the incremental backup during the process of the new data being written to the storage device. However, if a user decides to make a backup of data from the data storage device after a certain time period, the backup is not allowed.
In some cases a full back up is not needed. Instead, only the previous versions of files or parts thereof (i.e., data sets), which are rewritten as a result of write file requests, can be saved (i.e., backed up).
Symantec's GoBack provides a continuous data protection at the block level backup. However, GoBack uses a buffer space for storage of the changed files using FIFO scheme (First In First Out). This limits the amount of data, and, eventually, limits how far back it is possible to go in order to restore data. Thus, when the buffer space becomes full, GoBack starts to delete its earlier checkpoints and the data stored earlier.
GoBack technology is based on a file-level monitoring and logging technique. It needs to consume a large chunk of the hard disk space to create a change history file. A monitoring system picks up every file change, regardless of whether or not it is worth recording. A simple system restart will generate hundreds of file changes to be logged. The details of change history logging file consumes the hard disk space quickly and puts tremendous burden on a system resources.
Accordingly, there is a need in the art for an effective and efficient method of continuous protection of files, with minimal time and effort, so data backup process allows a computer system to remain online, with possibility to restore data from the backup at the time of the system failure up to the pre-selected point of restoration.